#pragma once
#include "Item.h"

namespace Fysics
{
	class StreamSpawnPoint : public Item
	{
	private:
		glm::vec3 m_Scale;
		int m_Density = 1000;
		int m_BoundaryDampening = 256;
	public:
		StreamSpawnPoint(glm::vec3 position = glm::vec3(0, 0, 0), glm::vec3 scale = glm::vec3(3, 1, 3)) 
			: Item("Stream", position), m_Scale(scale) {}

		const glm::vec3 GetScale() const { return m_Scale; }
		float GetDens() const { return m_Density; }
		float GetDamp() const { return m_BoundaryDampening; }
		
		virtual ObjectType GetType() const override { return ObjectType::type_Stream; }
		virtual glm::mat4 GetModelMatrix() const override;
		virtual void Draw() override;
		virtual void ShowEditPanel() override;
	};
}